/**
 * <p>
 * 描述：
 * </p>

 * @package ：com.andy.demo.soap<br>
 * @author ：wanglongjie<br>
 */
package com.andy.demo.soap;

import java.util.List;

/**
 * <p>
 * 描述：SOAP 相关参数
 * </p>
 * 
 * @author wanglongjie<br>
 * @version v1.0 2017年7月28日上午10:25:23
 */
public class SoapParam {
	/**
	 * WSDL 发布地址
	 */
	private String wsdlLocation;
	/**
	 * 调用方法名称
	 */
	private String callMethodName;
	/**
	 * 调用方法实参 属性名字符串，最终转化到 methodParamNames 中
	 */
	private String paramName;
	/**
	 * 调用方法实参 值集合字符串，最终转化到 methodParamValues 中
	 */
	private String paramValues;
	/**
	 * 调用方法实参 属性名（为空，则默认为 arg0,arg1,arg2...）
	 */
	private List<String> methodParamNames;
	/**
	 * 调用方法实参 值集合（，若methodParamNames不为空，则methodParamValues 与 methodParamNames
	 * 个数保持一致）
	 */
	private List<Object> methodParamValues;
	/**
	 * 服务名称
	 */
	private String interfaceName;

	/**
	 * 
	 */
	public SoapParam() {
		super();
	}

	/**
	 * @param wsdlLocation
	 *            WSDL 发布地址
	 * @param callMethodName
	 *            调用方法名称
	 * @param interfaceName
	 *            服务名称
	 */
	public SoapParam(String wsdlLocation, String callMethodName,
			String interfaceName) {
		super();
		this.wsdlLocation = wsdlLocation;
		this.callMethodName = callMethodName;
		this.interfaceName = interfaceName;
	}

	/**
	 * @return the wsdlLocation
	 */
	public String getWsdlLocation() {
		return wsdlLocation;
	}

	/**
	 * @param wsdlLocation
	 *            the wsdlLocation to set
	 */
	public void setWsdlLocation(String wsdlLocation) {
		this.wsdlLocation = wsdlLocation;
	}

	/**
	 * @return the callMethodName
	 */
	public String getCallMethodName() {
		return callMethodName;
	}

	/**
	 * @param callMethodName
	 *            the callMethodName to set
	 */
	public void setCallMethodName(String callMethodName) {
		this.callMethodName = callMethodName;
	}

	/**
	 * @return the interfaceName
	 */
	public String getInterfaceName() {
		return interfaceName;
	}

	/**
	 * @param interfaceName
	 *            the interfaceName to set
	 */
	public void setInterfaceName(String interfaceName) {
		this.interfaceName = interfaceName;
	}

	/**
	 * @return the methodParamNames
	 */
	public List<String> getMethodParamNames() {
		return methodParamNames;
	}

	/**
	 * @param methodParamNames
	 *            the methodParamNames to set
	 */
	public void setMethodParamNames(List<String> methodParamNames) {
		this.methodParamNames = methodParamNames;
	}

	/**
	 * @return the methodParamValues
	 */
	public List<Object> getMethodParamValues() {
		return methodParamValues;
	}

	/**
	 * @param methodParamValues
	 *            the methodParamValues to set
	 */
	public void setMethodParamValues(List<Object> methodParamValues) {
		this.methodParamValues = methodParamValues;
	}

	/**
	 * @return the paramName
	 */
	public String getParamName() {
		return paramName;
	}

	/**
	 * @param paramName
	 *            the paramName to set
	 */
	public void setParamName(String paramName) {
		this.paramName = paramName;
	}

	/**
	 * @return the paramValues
	 */
	public String getParamValues() {
		return paramValues;
	}

	/**
	 * @param paramValues
	 *            the paramValues to set
	 */
	public void setParamValues(String paramValues) {
		this.paramValues = paramValues;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "SoapParam [wsdlLocation=" + wsdlLocation + ", callMethodName="
				+ callMethodName + ", methodParamNames=" + methodParamNames
				+ ", methodParamValues=" + methodParamValues
				+ ", interfaceName=" + interfaceName + "]";
	}

}
